package com.rent.common.service;

import org.springframework.web.multipart.MultipartFile;

import java.io.IOException;

/**
 * 文件存储服务接口
 * 支持多种存储策略（本地、阿里云OSS等）
 * 
 * @author Rent Team
 */
public interface StorageService {
    /**
     * 上传文件并返回可访问的绝对URL
     * 
     * @param file 文件对象
     * @return 文件访问URL
     * @throws IOException 文件操作异常
     */
    String upload(String prefix, MultipartFile file) throws IOException;
    
    /**
     * 物理删除文件
     * 
     * @param filePath 文件路径或URL
     * @throws IOException 文件操作异常
     */
    void delete(String filePath) throws IOException;
}

